package muhnes.sizoo.modelo;

import java.io.Serializable;

public class Otorgamiento implements Serializable {
    
    private Rol rol;
    private Privilegio privilegio;
    private boolean concedido;
    
    public Otorgamiento() {
    }
    
    public Otorgamiento( Rol rol, boolean concedido ) {
        this.rol = rol;
        this.concedido = concedido;
    }
    
    public Otorgamiento( Privilegio privilegio, boolean concedido ) {
        this.privilegio = privilegio;
        this.concedido = concedido;
    }
    
    public Rol getRol() {
        return rol;
    }
    
    public void setRol(Rol rol) {
        this.rol = rol;
    }

    public Privilegio getPrivilegio() {
        return privilegio;
    }

    public void setPrivilegio(Privilegio privilegio) {
        this.privilegio = privilegio;
    }

    public boolean isConcedido() {
        return concedido;
    }

    public void setConcedido(boolean concedido) {
        this.concedido = concedido;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final Otorgamiento other = (Otorgamiento) obj;
        if (this.rol != other.rol && (this.rol == null || !this.rol.equals(other.rol))) {
            return false;
        }
        if (this.privilegio != other.privilegio && (this.privilegio == null || !this.privilegio.equals(other.privilegio))) {
            return false;
        }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 5;
        hash = 11 * hash + (this.rol != null ? this.rol.hashCode() : 0);
        hash = 11 * hash + (this.privilegio != null ? this.privilegio.hashCode() : 0);
        return hash;
    }

    @Override
    public String toString() {
        return "Otorgamiento{" + "rol=" + rol + ", privilegio=" + privilegio + ", concedido=" + concedido + '}';
    }
        
}
